The present invention relates generally to methods and apparatus for collecting, editing and distributing video content.
Video camcorders have been around for many years and provide non-professional users an easy and an inexpensive mechanism for capturing life moments. Conventional video footage recorded by non-professional users suffers from three major problems that have no practical solutions. The longevity of a conventional videotape is approximately 10 years, after which the tapes degrade rather quickly. Homeowners and renters alike typically store video tapes in non-secure storage means that are susceptible to theft and damage (e.g., fire, flood and other natural disasters). Finally, most videotape recorded by conventional non-professional users includes more junk than real footage. That is, non-professional users of camcorders tend to not set up their shots and as such over record, creating undesirable junk footage. Conventional editing tools, where available, are difficult to use and very time consuming. As such, most non-professional users keep all of the raw footage on tape without editing out the junk.
Conventional solutions to these problems are either inadequate or too expensive. Tape to tape duplication services are available, but costs are not trivial and the duplicate tapes suffer from the same limitations discussed above. Professional encoding of videotapes to optical disks is very expensive typically on the order of magnitude of $60/min. Home equipment for digital encoding and editing, where available, is expensive and time consuming to operate.
In one aspect the invention provides a method for detecting a scene transition in digitized video data including acquiring digitized video data from a source and evaluating a frame at a time the video data. For each frame, the method determines if a cut is detected between the current frame and a previous frame. More frames in the digitized video data are processed to determine if the detected cut is part of a long flash. Detected cuts that are not long flashes are marked.
Aspects of the invention can include one or more of the following features. The step of processing more frames can include processing a predetermined number of frames including a last frame. The processing can include comparing each frame including the last frame to the previous frame, and if any of the frames are sufficiently similar to the previous frame, then declaring the detected cut a long flash and not marking the detected cut. Comparing frames can include comparing a color, motion or score difference between the frames. Comparing the frames can include deriving a score representative of the similarity of the compared frames. The score can be derived from a mathematical comparison of the frames considering at least one parameter. The score can be a product of the color and motion differences between the respective frames or a weighted mean of the color and motion differences between the respective frames.
In another aspect, the invention provides a method for detecting a scene transition in digitized video data and includes determining if a dissolve is detected in the video data that ends with a current frame based at least on the current frame and one or more previous frames in the digitized video data. The dissolve has a predefined length. The method includes comparing the dissolve to a synthetically produced dissolve spanning a same length and generated from starting and ending frames associated with the detected dissolve. The detected dissolve is marked only if the detected dissolve is sufficiently similar to the synthetically produced dissolve.
Aspects of the invention can include one or more of the following features. The step of comparing can include comparing a subset of all of the frames in the detected dissolve to the frames in the synthetically produced dissolve. The step of determining can further include evaluating a previously processed frame at a distance a half dissolve from the current frame and a full dissolve from the current frame including determining if the current frame is sufficiently different from both the frame located a half dissolve length ago and a full dissolve length ago. The step of determining can include evaluating previously processed frames, a first frame at a distance a half dissolve from the current frame and a second frame at a distance a full dissolve from the current frame, including determining if the current frame is sufficiently different from both the first and second frames; and marking the detected dissolve only if the current frame is sufficiently different from the first and second frames.
Prior to marking, the method can further include determining if the detected dissolve overlaps a previously detected dissolve, and if so, combining the overlapping dissolves. The determining step can include hypothesizing where the detected dissolve starts and ends including identifying starting, middle and ending frames,
comparing the starting, middle and ending frames to determine if each is sufficiently different from the others and, if the frames are sufficiently different, marking the detected dissolve.
In another aspect, the invention provides a method for detecting a fade in digitized video data and includes detecting a first transition in the digitized video data,
detecting a second transition within a pre-set number (Nfade) of frames from an end of the first transition, determining if the frames intermediary between the first and second transitions are substantially uniform and marking the first and second transition as a single fade transition.
Aspects of the invention can include one or more of the following features. The first transition can be a dissolve and the second transition can be a cut or a dissolve. The step of comparing intermediary frames can include determining a number of frames between the first and second transitions. If the number of frames exceeds a predetermined number, each of the first and second transitions are marked without marking a fade transition. The step of comparing intermediary frames can include determining if a minimum number of uniform frames exist between the first and second transitions. If the number of uniform frames does not exceed a predetermined number, each of the first and second transitions is marked without marking a fade transition.
The step of comparing intermediary frames can include determining a ratio of non-uniform frames to uniform frames between the first and second transitions. If the ratio exceeds a predetermined number, each of the first and second transitions is marked without marking a fade transition.
In another aspect, the invention provides a method for detecting a compound transition in digitized video data and includes detecting a first transition in the digitized video data, detecting a second transition within a pre-set number (Nfade) of frames from the first transition, determining if the frames intermediary between the first and second transitions are substantially uniform and marking the first and second transition as a compound transition.
In another aspect, the invention provides a method for detecting a scene transition in digitized video data and includes determining if a gradual transition is detected in the video data that ends with a current frame based at least on the current frame and one or more previous frames in the digitized video data. The gradual transition has a length. The method includes comparing the gradual transition to a synthetically produced gradual transition spanning a same length and generated from starting and ending frames associated with the detected gradual transition and marking the detected gradual transition only if the detected gradual transition is sufficiently similar to the synthetically produced gradual transition.
Aspects of the invention can include one or more of the following features. The gradual transition can be selected from the group of a dissolve, a wipe, a page flip, a tear, an iris transition and a pixelation transition.
Aspects of the invention can include one or more of the following advantages. An efficient and inexpensive system is provided for collecting, digitizing and editing video content. The system includes digitizing equipment for digitizing analog and digital video input for distribution over the Internet. The system includes scene detection mechanisms for parsing the digitized content into plural scenes that can then be edited or otherwise manipulated by the user. The scene detection mechanisms include methods for detecting individual scene transitions as well as composite scene breaks, such as fades. The system includes methods for identifying and marking cuts and dissolves including comparing dissolves to synthetically produced dissolves. The marking process includes timeout checks and methods for marking a correct transition in a composite scene break. The system includes methods for detecting short and long flashes so as to avoid mis-marking scenes.